{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 78,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 导入相关的库\n",
    "\n",
    "import pandas as pd \n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "import squarify\n",
    "import warnings\n",
    "import gc\n",
    "from datetime import datetime,timedelta\n",
    "%matplotlib inline\n",
    "warnings.filterwarnings('ignore')\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 79,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>1</th>\n",
       "      <th>2268318</th>\n",
       "      <th>2520377</th>\n",
       "      <th>pv</th>\n",
       "      <th>1511544070</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1</td>\n",
       "      <td>2333346</td>\n",
       "      <td>2520771</td>\n",
       "      <td>pv</td>\n",
       "      <td>1511561733</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>1</td>\n",
       "      <td>2576651</td>\n",
       "      <td>149192</td>\n",
       "      <td>pv</td>\n",
       "      <td>1511572885</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>1</td>\n",
       "      <td>3830808</td>\n",
       "      <td>4181361</td>\n",
       "      <td>pv</td>\n",
       "      <td>1511593493</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>1</td>\n",
       "      <td>4365585</td>\n",
       "      <td>2520377</td>\n",
       "      <td>pv</td>\n",
       "      <td>1511596146</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>1</td>\n",
       "      <td>4606018</td>\n",
       "      <td>2735466</td>\n",
       "      <td>pv</td>\n",
       "      <td>1511616481</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   1  2268318  2520377  pv  1511544070\n",
       "0  1  2333346  2520771  pv  1511561733\n",
       "1  1  2576651   149192  pv  1511572885\n",
       "2  1  3830808  4181361  pv  1511593493\n",
       "3  1  4365585  2520377  pv  1511596146\n",
       "4  1  4606018  2735466  pv  1511616481"
      ]
     },
     "execution_count": 79,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 对数据进行不放回抽样，抽去前500万行的数据\n",
    "data = pd.read_csv('/Users/fq/Desktop/UserBehavior.csv',nrows= 5000000)\n",
    "\n",
    "data.head(5)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 80,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "RangeIndex: 5000000 entries, 0 to 4999999\n",
      "Data columns (total 5 columns):\n",
      " #   Column      Dtype \n",
      "---  ------      ----- \n",
      " 0   1           int64 \n",
      " 1   2268318     int64 \n",
      " 2   2520377     int64 \n",
      " 3   pv          object\n",
      " 4   1511544070  int64 \n",
      "dtypes: int64(4), object(1)\n",
      "memory usage: 190.7+ MB\n"
     ]
    }
   ],
   "source": [
    "# 查看数据信息\n",
    "data.info()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 81,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 以userdata.csv保存输出：\n",
    "data.to_csv('/Users/fq/Desktop/Userdata.csv')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 82,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Unnamed: 0</th>\n",
       "      <th>1</th>\n",
       "      <th>2268318</th>\n",
       "      <th>2520377</th>\n",
       "      <th>pv</th>\n",
       "      <th>1511544070</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>2333346</td>\n",
       "      <td>2520771</td>\n",
       "      <td>pv</td>\n",
       "      <td>1511561733</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>2576651</td>\n",
       "      <td>149192</td>\n",
       "      <td>pv</td>\n",
       "      <td>1511572885</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "      <td>3830808</td>\n",
       "      <td>4181361</td>\n",
       "      <td>pv</td>\n",
       "      <td>1511593493</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "      <td>4365585</td>\n",
       "      <td>2520377</td>\n",
       "      <td>pv</td>\n",
       "      <td>1511596146</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>4</td>\n",
       "      <td>1</td>\n",
       "      <td>4606018</td>\n",
       "      <td>2735466</td>\n",
       "      <td>pv</td>\n",
       "      <td>1511616481</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   Unnamed: 0  1  2268318  2520377  pv  1511544070\n",
       "0           0  1  2333346  2520771  pv  1511561733\n",
       "1           1  1  2576651   149192  pv  1511572885\n",
       "2           2  1  3830808  4181361  pv  1511593493\n",
       "3           3  1  4365585  2520377  pv  1511596146\n",
       "4           4  1  4606018  2735466  pv  1511616481"
      ]
     },
     "execution_count": 82,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 数据集缺少标题列，使用pandas做简单的数据修改\n",
    "file_path = '/Users/fq/Desktop/Userdata.csv'\n",
    "df = pd.read_csv(file_path)             #保存为DataFrame格式，存入变量df\n",
    "df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 83,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "RangeIndex: 5000000 entries, 0 to 4999999\n",
      "Data columns (total 5 columns):\n",
      " #   Column          Dtype \n",
      "---  ------          ----- \n",
      " 0   user_id         int64 \n",
      " 1   item_id         int64 \n",
      " 2   category_id     int64 \n",
      " 3   behaviour_type  object\n",
      " 4   timestamp       int64 \n",
      "dtypes: int64(4), object(1)\n",
      "memory usage: 190.7+ MB\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>user_id</th>\n",
       "      <th>item_id</th>\n",
       "      <th>category_id</th>\n",
       "      <th>behaviour_type</th>\n",
       "      <th>timestamp</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1</td>\n",
       "      <td>2333346</td>\n",
       "      <td>2520771</td>\n",
       "      <td>pv</td>\n",
       "      <td>1511561733</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>1</td>\n",
       "      <td>2576651</td>\n",
       "      <td>149192</td>\n",
       "      <td>pv</td>\n",
       "      <td>1511572885</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>1</td>\n",
       "      <td>3830808</td>\n",
       "      <td>4181361</td>\n",
       "      <td>pv</td>\n",
       "      <td>1511593493</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>1</td>\n",
       "      <td>4365585</td>\n",
       "      <td>2520377</td>\n",
       "      <td>pv</td>\n",
       "      <td>1511596146</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>1</td>\n",
       "      <td>4606018</td>\n",
       "      <td>2735466</td>\n",
       "      <td>pv</td>\n",
       "      <td>1511616481</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   user_id  item_id  category_id behaviour_type   timestamp\n",
       "0        1  2333346      2520771             pv  1511561733\n",
       "1        1  2576651       149192             pv  1511572885\n",
       "2        1  3830808      4181361             pv  1511593493\n",
       "3        1  4365585      2520377             pv  1511596146\n",
       "4        1  4606018      2735466             pv  1511616481"
      ]
     },
     "execution_count": 83,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 删除数据集的首列,设置列索引名\n",
    "del df['Unnamed: 0']\n",
    "df.columns = ['user_id', 'item_id', 'category_id', 'behaviour_type', 'timestamp']\n",
    "df.info()     # 数据五个特征，共占用内存190.7M\n",
    "df.head()   "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 84,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 保存新文件，替换原始数据集\n",
    "df.to_csv('/Users/fq/Desktop/Userdata.csv')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 85,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "重复数据有： 5\n",
      "删除后，重复数据有： 0\n"
     ]
    }
   ],
   "source": [
    "# 数据清洗 \n",
    "# 计算重复值，并删除：\n",
    "print('重复数据有：',df.duplicated().sum())   # 重复数据有5个\n",
    "df = df.drop_duplicates()\n",
    "print('删除后，重复数据有：',df.duplicated().sum())  #删除重复值"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 86,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "user_id           0\n",
       "item_id           0\n",
       "category_id       0\n",
       "behaviour_type    0\n",
       "timestamp         0\n",
       "dtype: int64"
      ]
     },
     "execution_count": 86,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 查看各字段的缺失值数量：\n",
    "df.isnull().sum()   # 无缺失字段"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 87,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>user_id</th>\n",
       "      <th>item_id</th>\n",
       "      <th>category_id</th>\n",
       "      <th>behaviour_type</th>\n",
       "      <th>timestamp</th>\n",
       "      <th>date</th>\n",
       "      <th>time</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1</td>\n",
       "      <td>2333346</td>\n",
       "      <td>2520771</td>\n",
       "      <td>pv</td>\n",
       "      <td>2017-11-25 06:15:33</td>\n",
       "      <td>2017-11-25</td>\n",
       "      <td>6</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>1</td>\n",
       "      <td>2576651</td>\n",
       "      <td>149192</td>\n",
       "      <td>pv</td>\n",
       "      <td>2017-11-25 09:21:25</td>\n",
       "      <td>2017-11-25</td>\n",
       "      <td>9</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>1</td>\n",
       "      <td>3830808</td>\n",
       "      <td>4181361</td>\n",
       "      <td>pv</td>\n",
       "      <td>2017-11-25 15:04:53</td>\n",
       "      <td>2017-11-25</td>\n",
       "      <td>15</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>1</td>\n",
       "      <td>4365585</td>\n",
       "      <td>2520377</td>\n",
       "      <td>pv</td>\n",
       "      <td>2017-11-25 15:49:06</td>\n",
       "      <td>2017-11-25</td>\n",
       "      <td>15</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>1</td>\n",
       "      <td>4606018</td>\n",
       "      <td>2735466</td>\n",
       "      <td>pv</td>\n",
       "      <td>2017-11-25 21:28:01</td>\n",
       "      <td>2017-11-25</td>\n",
       "      <td>21</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   user_id  item_id  category_id behaviour_type           timestamp  \\\n",
       "0        1  2333346      2520771             pv 2017-11-25 06:15:33   \n",
       "1        1  2576651       149192             pv 2017-11-25 09:21:25   \n",
       "2        1  3830808      4181361             pv 2017-11-25 15:04:53   \n",
       "3        1  4365585      2520377             pv 2017-11-25 15:49:06   \n",
       "4        1  4606018      2735466             pv 2017-11-25 21:28:01   \n",
       "\n",
       "         date  time  \n",
       "0  2017-11-25     6  \n",
       "1  2017-11-25     9  \n",
       "2  2017-11-25    15  \n",
       "3  2017-11-25    15  \n",
       "4  2017-11-25    21  "
      ]
     },
     "execution_count": 87,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 日期与时间段的处理\n",
    "\n",
    "#原始数据的时间格式是英国时区，换成中国东八区需要+8小时\n",
    "df['timestamp'] = pd.to_datetime(df['timestamp'],unit='s')+timedelta(hours = 8)\n",
    "df['date'] = df['timestamp'].dt.date\n",
    "df['time'] = df['timestamp'].dt.hour\n",
    "df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 88,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Int64Index([   4169,    7989,    7990,   10850,   11393,   18407,   18573,\n",
       "              20068,   20069,   20489,\n",
       "            ...\n",
       "            4978177, 4982469, 4982478, 4985445, 4989008, 4991273, 4992338,\n",
       "            4992339, 4992340, 4992341],\n",
       "           dtype='int64', length=2600)"
      ]
     },
     "execution_count": 88,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 数据的异常值处理\n",
    "# 找出日期小于2017-11-25日的值，并删除：\n",
    "df[df['timestamp']<datetime(2017,11,25)].index      #小于日期小于2017-11-25日的值为2600行"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 89,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "Int64Index: 4997395 entries, 0 to 4999999\n",
      "Data columns (total 7 columns):\n",
      " #   Column          Dtype         \n",
      "---  ------          -----         \n",
      " 0   user_id         int64         \n",
      " 1   item_id         int64         \n",
      " 2   category_id     int64         \n",
      " 3   behaviour_type  object        \n",
      " 4   timestamp       datetime64[ns]\n",
      " 5   date            object        \n",
      " 6   time            int64         \n",
      "dtypes: datetime64[ns](1), int64(4), object(2)\n",
      "memory usage: 305.0+ MB\n"
     ]
    }
   ],
   "source": [
    "df.drop(df[df['timestamp']<datetime(2017,11,25)].index,inplace=True)\n",
    "df.info()    # 原行数5000000，删除后4997395"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 90,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "32"
      ]
     },
     "execution_count": 90,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 找出日期大于2017-12-04日的值，并删除：\n",
    "df[df['timestamp']>datetime(2017,12,4)].time.count()      #小于日期大于2017-12-04日的值为32行"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 91,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "<class 'pandas.core.frame.DataFrame'>\n",
      "Int64Index: 4997363 entries, 0 to 4999999\n",
      "Data columns (total 7 columns):\n",
      " #   Column          Dtype         \n",
      "---  ------          -----         \n",
      " 0   user_id         int64         \n",
      " 1   item_id         int64         \n",
      " 2   category_id     int64         \n",
      " 3   behaviour_type  object        \n",
      " 4   timestamp       datetime64[ns]\n",
      " 5   date            object        \n",
      " 6   time            int64         \n",
      "dtypes: datetime64[ns](1), int64(4), object(2)\n",
      "memory usage: 305.0+ MB\n"
     ]
    }
   ],
   "source": [
    "df.drop(df[df['timestamp']>datetime(2017,12,4)].index,inplace=True)\n",
    "df.info()            # 原行数4997395，删除后4997363"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 92,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "计算各值为： 48984 4472599 91.30734525559366 100126\n"
     ]
    }
   ],
   "source": [
    "# 数据分析 可视化处理：\n",
    "# 1、数据整体情况\n",
    "# 1.1 访问用户总数UV、页面总访问量PV、人均浏览次数、成交量\n",
    "UV = df['user_id'].unique().size\n",
    "PV = df[df['behaviour_type'] == 'pv'].user_id.count()\n",
    "user_per = PV/UV\n",
    "buy_count = df[df['behaviour_type'] == 'buy'].user_id.count()\n",
    "print('计算各值为：',UV,PV,user_per,buy_count)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 93,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>日访客数</th>\n",
       "      <th>日浏览数</th>\n",
       "      <th>日人均浏览数</th>\n",
       "      <th>日成交量</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>日期</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>2017-11-25</th>\n",
       "      <td>513948</td>\n",
       "      <td>461170</td>\n",
       "      <td>1.114444</td>\n",
       "      <td>9889</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2017-11-26</th>\n",
       "      <td>531631</td>\n",
       "      <td>476245</td>\n",
       "      <td>1.116297</td>\n",
       "      <td>10091</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2017-11-27</th>\n",
       "      <td>499919</td>\n",
       "      <td>446740</td>\n",
       "      <td>1.119038</td>\n",
       "      <td>11088</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2017-11-28</th>\n",
       "      <td>492497</td>\n",
       "      <td>440340</td>\n",
       "      <td>1.118447</td>\n",
       "      <td>10562</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2017-11-29</th>\n",
       "      <td>510914</td>\n",
       "      <td>456976</td>\n",
       "      <td>1.118032</td>\n",
       "      <td>11145</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2017-11-30</th>\n",
       "      <td>521171</td>\n",
       "      <td>467215</td>\n",
       "      <td>1.115484</td>\n",
       "      <td>11007</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2017-12-01</th>\n",
       "      <td>543502</td>\n",
       "      <td>486101</td>\n",
       "      <td>1.118085</td>\n",
       "      <td>10508</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2017-12-02</th>\n",
       "      <td>695569</td>\n",
       "      <td>622231</td>\n",
       "      <td>1.117863</td>\n",
       "      <td>12883</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2017-12-03</th>\n",
       "      <td>688212</td>\n",
       "      <td>615581</td>\n",
       "      <td>1.117988</td>\n",
       "      <td>12953</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "              日访客数    日浏览数    日人均浏览数   日成交量\n",
       "日期                                         \n",
       "2017-11-25  513948  461170  1.114444   9889\n",
       "2017-11-26  531631  476245  1.116297  10091\n",
       "2017-11-27  499919  446740  1.119038  11088\n",
       "2017-11-28  492497  440340  1.118447  10562\n",
       "2017-11-29  510914  456976  1.118032  11145\n",
       "2017-11-30  521171  467215  1.115484  11007\n",
       "2017-12-01  543502  486101  1.118085  10508\n",
       "2017-12-02  695569  622231  1.117863  12883\n",
       "2017-12-03  688212  615581  1.117988  12953"
      ]
     },
     "execution_count": 93,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 1.2 日均访问用户UV、日均页面访问量PV、人均浏览次数、成交量\n",
    "\n",
    "st_perday = df[['user_id','date']].groupby('date').count()\n",
    "st_perday['pv_perday'] = df[df['behaviour_type'] == 'pv'][['behaviour_type','date']].groupby('date').count()\n",
    "st_perday['deep_perday'] = st_perday['user_id']/st_perday['pv_perday']\n",
    "st_perday['buy_perday'] = df[df['behaviour_type'] == 'buy'][['behaviour_type','date']].groupby('date').count()\n",
    "st_perday.columns = ['日访客数','日浏览数','日人均浏览数','日成交量']\n",
    "st_perday.index.name = '日期'\n",
    "st_perday"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 97,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 864x216 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 解决中文显示问题\n",
    "plt.rcParams['font.family'] = ['sans-serif']\n",
    "plt.rcParams['font.sans-serif'] = ['Arial Unicode MS']\n",
    "plt.figure(figsize=(12,3))\n",
    "plt.plot(st_perday[['日访客数','日浏览数']])\n",
    "plt.legend(labels = ['日访客数','日浏览数'],loc = 2)\n",
    "plt.twinx()\n",
    "plt.plot(st_perday[['日成交量']],color = 'red')\n",
    "plt.legend(['日成交量'],loc =4)\n",
    "plt.title('日访客数、日浏览数以及日成交量趋势图')\n",
    "plt.savefig('1.png',dpi = 600)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "12月2,3号是周六日，其数值同比上周增长幅度较大，应该是双12活动开始预热。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 98,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "复购次数：21892\n",
      "实际购买次数：100126\n",
      "复购率：21.86%\n",
      "跳失率为：0.06941%\n"
     ]
    }
   ],
   "source": [
    "# 1.3 用户的复购率和跳失率\n",
    "\n",
    "buy_count = df[df['behaviour_type'] == 'buy'].user_id.count()\n",
    "a = df[df['behaviour_type'] == 'buy']['user_id'].value_counts()>=2\n",
    "re_buy = a[a].size\n",
    "# 计算复购率：\n",
    "re_buy_rate = (re_buy / buy_count) *100\n",
    "print('复购次数：%i\\n实际购买次数：%i\\n复购率：%.2f%%'%(re_buy,buy_count,re_buy_rate))\n",
    "# 计算跳失率：\n",
    "a = df[df['behaviour_type']=='pv']['user_id'].value_counts()==1\n",
    "a = a[a].size/UV*100\n",
    "print('跳失率为：%0.5f%%'%a)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "数量级为10万的情况下，复购率为65.87%，但是在数量级为5百万的情况下复购为仅为21.92%。\n",
    "\n",
    "数量级是非常重要的，在可能的情况还是有分析尽可能多的数据。\n",
    "\n",
    "复购率反映的是用户的粘性，忠诚度，不同的复购率会采取不用运营策略。\n",
    "\n",
    "复购率如果小于15%，运营策略应该重点放在新客获取上，\n",
    "\n",
    "复购率超过60%则应该放在忠诚客户维系上。\n",
    "\n",
    "处在中间则应采用混合模式。\n",
    "\n",
    "针对于本数据的21%的复购率，我们应该考虑在获取新用户的同时，提高旧用户的用户黏度。\n",
    "\n",
    "该数量的用户跳失率相对较低。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 99,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "回收内存数量：\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "61048"
      ]
     },
     "execution_count": 99,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "print('回收内存数量：')\n",
    "del PV\n",
    "del UV\n",
    "del a\n",
    "del buy_count\n",
    "del re_buy\n",
    "del re_buy_rate\n",
    "del st_perday\n",
    "del user_per\n",
    "gc.collect()    #  强制对所有代进行垃圾回"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 100,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>user_id</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>行为分布值</th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>buy</th>\n",
       "      <td>100126</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>fav</th>\n",
       "      <td>145125</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>cart</th>\n",
       "      <td>279513</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>pv</th>\n",
       "      <td>4472599</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "       user_id\n",
       "行为分布值         \n",
       "buy     100126\n",
       "fav     145125\n",
       "cart    279513\n",
       "pv     4472599"
      ]
     },
     "execution_count": 100,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 2、用户行为转化分析\n",
    "# 2.1 基于行为转化漏斗分析\n",
    "be_value = df[['user_id','behaviour_type']].groupby('behaviour_type').count().sort_values(by = 'user_id')\n",
    "be_value.index.name='行为分布值'\n",
    "be_value"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 103,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 绘制用户行为分布条形图：\n",
    "y = be_value['user_id']\n",
    "x = ['用户购买数','用户加购数','用户收藏数','用户浏览数']\n",
    "plt.barh(x,y)\n",
    "plt.title(\"用户行为分布情况\")\n",
    "plt.savefig('2.png',dpi = 600)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "浏览后的加购的转化率为6.24%\n",
    "\n",
    "浏览后的收藏的转化率为3.24%\n",
    "\n",
    "浏览后的购买的转化率为2.23%\n",
    "\n",
    "可以看出用户在浏览后的行为转化率都较低，那么用户转化是否也是如此？"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 104,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "浏览用户数    48782\n",
       "加购用户数    36906\n",
       "收藏用户数    19489\n",
       "购买用户数    33286\n",
       "dtype: int64"
      ]
     },
     "execution_count": 104,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 2.2 基于用户转化漏斗分析:\n",
    "pv_user = df[df['behaviour_type'] == 'pv']['user_id'].unique().size\n",
    "cart_user = df[df['behaviour_type'] == 'cart']['user_id'].unique().size\n",
    "fav_user = df[df['behaviour_type'] == 'fav']['user_id'].unique().size\n",
    "buy_user = df[df['behaviour_type'] == 'buy']['user_id'].unique().size\n",
    "be_user = {'浏览用户数':pv_user,'加购用户数':cart_user,'收藏用户数':fav_user,'购买用户数':buy_user}\n",
    "be_user = pd.Series(be_user)\n",
    "be_user"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 105,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 绘制用户分布条形图：\n",
    "be_user.plot(kind='barh')\n",
    "plt.title(\"用户分布情况\")\n",
    "plt.savefig('2.png',dpi = 600)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "用户浏览后加购的转化率为75.49%\n",
    "\n",
    "用户浏览后收藏的转化率为39.77%\n",
    "\n",
    "用户浏览后购买的转化率为68.03%\n",
    "\n",
    "由上图可以看出，用户并未在点击后就大量流失,而且有高达68.03%的付费转化率。结合业务场景分析，行为转化率较低的原因是用户要对同种产品进行比较，以及单纯的浏览商品。还有为什么收藏用户数远小于加购的用户数？结合业务场景，推测可能因为收藏后不可以直接购买，但是加购后可以直接购买。可以引导用户将单纯的收藏行为，转化为收藏并加购，来提升用户购买转化率。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 106,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "整体用户行为按小时分布表\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>购买</th>\n",
       "      <th>加购</th>\n",
       "      <th>收藏</th>\n",
       "      <th>浏览</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>小时</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>2916</td>\n",
       "      <td>9181</td>\n",
       "      <td>5070</td>\n",
       "      <td>149884</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>1101</td>\n",
       "      <td>4164</td>\n",
       "      <td>2295</td>\n",
       "      <td>68466</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>603</td>\n",
       "      <td>2150</td>\n",
       "      <td>1403</td>\n",
       "      <td>37536</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>302</td>\n",
       "      <td>1664</td>\n",
       "      <td>911</td>\n",
       "      <td>26422</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>328</td>\n",
       "      <td>1410</td>\n",
       "      <td>797</td>\n",
       "      <td>22544</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>380</td>\n",
       "      <td>1992</td>\n",
       "      <td>919</td>\n",
       "      <td>28039</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>922</td>\n",
       "      <td>3967</td>\n",
       "      <td>2169</td>\n",
       "      <td>60113</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>1845</td>\n",
       "      <td>7486</td>\n",
       "      <td>3843</td>\n",
       "      <td>111536</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>3186</td>\n",
       "      <td>9906</td>\n",
       "      <td>5409</td>\n",
       "      <td>154485</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>4775</td>\n",
       "      <td>11878</td>\n",
       "      <td>6466</td>\n",
       "      <td>188798</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>6383</td>\n",
       "      <td>13387</td>\n",
       "      <td>7478</td>\n",
       "      <td>216260</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>6184</td>\n",
       "      <td>13245</td>\n",
       "      <td>7375</td>\n",
       "      <td>210669</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>5883</td>\n",
       "      <td>13115</td>\n",
       "      <td>7256</td>\n",
       "      <td>213208</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>6225</td>\n",
       "      <td>14022</td>\n",
       "      <td>7766</td>\n",
       "      <td>234846</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>5980</td>\n",
       "      <td>13909</td>\n",
       "      <td>7383</td>\n",
       "      <td>230455</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15</th>\n",
       "      <td>6101</td>\n",
       "      <td>14195</td>\n",
       "      <td>7753</td>\n",
       "      <td>239338</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16</th>\n",
       "      <td>5756</td>\n",
       "      <td>13936</td>\n",
       "      <td>7386</td>\n",
       "      <td>230376</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>17</th>\n",
       "      <td>5156</td>\n",
       "      <td>13118</td>\n",
       "      <td>7036</td>\n",
       "      <td>208410</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>18</th>\n",
       "      <td>4703</td>\n",
       "      <td>12678</td>\n",
       "      <td>6631</td>\n",
       "      <td>216937</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>19</th>\n",
       "      <td>5680</td>\n",
       "      <td>16084</td>\n",
       "      <td>8110</td>\n",
       "      <td>271283</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>20</th>\n",
       "      <td>6743</td>\n",
       "      <td>19979</td>\n",
       "      <td>9390</td>\n",
       "      <td>329245</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>21</th>\n",
       "      <td>7194</td>\n",
       "      <td>23545</td>\n",
       "      <td>11192</td>\n",
       "      <td>376778</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>22</th>\n",
       "      <td>6837</td>\n",
       "      <td>24452</td>\n",
       "      <td>11513</td>\n",
       "      <td>368819</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>23</th>\n",
       "      <td>4943</td>\n",
       "      <td>20050</td>\n",
       "      <td>9574</td>\n",
       "      <td>278152</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "      购买     加购     收藏      浏览\n",
       "小时                            \n",
       "0   2916   9181   5070  149884\n",
       "1   1101   4164   2295   68466\n",
       "2    603   2150   1403   37536\n",
       "3    302   1664    911   26422\n",
       "4    328   1410    797   22544\n",
       "5    380   1992    919   28039\n",
       "6    922   3967   2169   60113\n",
       "7   1845   7486   3843  111536\n",
       "8   3186   9906   5409  154485\n",
       "9   4775  11878   6466  188798\n",
       "10  6383  13387   7478  216260\n",
       "11  6184  13245   7375  210669\n",
       "12  5883  13115   7256  213208\n",
       "13  6225  14022   7766  234846\n",
       "14  5980  13909   7383  230455\n",
       "15  6101  14195   7753  239338\n",
       "16  5756  13936   7386  230376\n",
       "17  5156  13118   7036  208410\n",
       "18  4703  12678   6631  216937\n",
       "19  5680  16084   8110  271283\n",
       "20  6743  19979   9390  329245\n",
       "21  7194  23545  11192  376778\n",
       "22  6837  24452  11513  368819\n",
       "23  4943  20050   9574  278152"
      ]
     },
     "execution_count": 106,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 3、 用户行为习惯分析\n",
    "# 3.1 整体用户行为活跃情况：\n",
    "# time_browse = df.groupby(['hour','behaviour_type'])['user_id'].count().unstack()\n",
    "# time_browse.columns = ['购买','加购','收藏','浏览']\n",
    "# time_browse.index.set_names('小时',inplace=True)\n",
    "# print('整体用户行为按小时分布表')\n",
    "# time_browse\n",
    "\n",
    "time_browse = df.groupby(['time','behaviour_type'])['user_id'].count().unstack()\n",
    "time_browse.columns = ['购买','加购','收藏','浏览']\n",
    "time_browse.index.name = '小时'\n",
    "print('整体用户行为按小时分布表')\n",
    "time_browse"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 107,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Figure size 1080x216 with 0 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1080x216 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 绘制整体用户行为活跃情况折线图：\n",
    "plt.figure(figsize=(15,3))\n",
    "time_browse[['加购','收藏','购买']].plot(style = '-o')\n",
    "plt.legend(loc = 2)\n",
    "plt.title('用户行为习惯按时间分布图')\n",
    "plt.xlabel('小时')\n",
    "plt.twinx()\n",
    "time_browse['浏览'].plot(kind = 'bar',figsize=(15,3),facecolor = 'orange',alpha = 0.5)\n",
    "plt.legend(loc=4)\n",
    "plt.savefig('3.png',dpi = 600)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "由上图可知，每日0点至3点用户活跃度迅速下降，降到最低值，4点到10点用户活跃度开始上升，10点至18点用户活跃度较平稳，18点后用户活跃度开始快速上升，并在20-22时达到一天中用户活跃度的最高值，符合人群的作息规律。根据用户不同活跃情况制定不同的运营策略，在用户活跃高峰期增加广告以及运营手段的投入，达到更高用户转化率。"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "本次分析的产品类目数量为：7352 \n",
      "商品数量为：1080286\n"
     ]
    }
   ],
   "source": [
    "# 4 用户类目偏好分析\n",
    "# 4.1 不同商品购买次数分析：\n",
    "print('本次分析的产品类目数量为：%i \\n商品数量为：%i'%(df['category_id'].unique().size,df['item_id'].unique().size))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 108,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 商品购买次数排名：\n",
    "buy_count = df[df['behaviour_type'] == 'buy'].groupby('item_id')['user_id'].count()\n",
    "buy_count = buy_count.value_counts(sort = True)[:10]\n",
    "buy_count\n",
    "buy_count.plot(kind = 'bar')\n",
    "plt.title('商品购买次数分析')\n",
    "plt.xlabel('购买次数')\n",
    "plt.savefig('4.png',dpi = 600)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "购买商品一次的占所有商品比为5.20%\n",
    "购买商品二次的占所有商品比为0.85%\n",
    "购买商品三次的占所有商品比为0.25%"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 116,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 864x216 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 4.2 不同行为下的排名前20的商品：\n",
    "# 浏览排名前20的商品:\n",
    "# b = df[df['behaviour_type']=='pv'].groupby('item_id')['user_id'].count().sort_values(ascending =False)[:20]\n",
    "# plt.figure(figsize= (12,3))\n",
    "# # squarify.plot(sizes=b.values,label=b.index,value = b.values,alpha = 0.5)\n",
    "# plt.axis('off')\n",
    "# plt.title('浏览排名前20的商品分布情况',fontdict = {'fontsize':15})\n",
    "# plt.tight_layout()\n",
    "\n",
    "be_pv = df[df['behaviour_type'] == 'pv'].groupby('item_id')['user_id'].count().sort_values(ascending = False)[:20]\n",
    "plt.figure(figsize=(12,3))\n",
    "squarify.plot(sizes = be_pv.values,label=be_pv.index,value=be_pv.values,alpha = 0.5,edgecolor = 'white')\n",
    "# 除去坐标轴\n",
    "plt.axis('off')\n",
    "# 除上边框和右边框刻度\n",
    "plt.tick_params(top = 'off', right = 'off')\n",
    "plt.title('浏览排名前20的商品分布情况')\n",
    "plt.savefig('3.png',dpi = 600)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 117,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 864x216 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 加购排名前20的商品:\n",
    "be_cart = df[df['behaviour_type'] == 'cart'].groupby('item_id')['user_id'].count().sort_values(ascending = False)[:20]\n",
    "plt.figure(figsize=(12,3))\n",
    "squarify.plot(sizes = be_cart.values,label=be_cart.index,value=be_cart.values,alpha = 0.5,edgecolor = 'white')\n",
    "# 除去坐标轴\n",
    "plt.axis('off')\n",
    "# 除上边框和右边框刻度\n",
    "plt.tick_params(top = 'off', right = 'off')\n",
    "plt.title('加购排名前20的商品分布情况')\n",
    "plt.savefig('3.png',dpi = 600)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 118,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 864x216 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 收藏排名前20的商品:\n",
    "be_fav = df[df['behaviour_type'] == 'fav'].groupby('item_id')['user_id'].count().sort_values(ascending = False)[:20]\n",
    "plt.figure(figsize=(12,3))\n",
    "squarify.plot(sizes = be_fav.values,label=be_fav.index,value=be_fav.values,alpha = 0.5,edgecolor = 'white')\n",
    "# 除去坐标轴\n",
    "plt.axis('off')\n",
    "# 除上边框和右边框刻度\n",
    "plt.tick_params(top = 'off', right = 'off')\n",
    "plt.title('收藏排名前20的商品分布情况')\n",
    "plt.savefig('4.png',dpi = 600)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 119,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 864x216 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 购买排名前20的商品:\n",
    "be_buy = df[df['behaviour_type'] == 'buy'].groupby('item_id')['user_id'].count().sort_values(ascending = False)[:20]\n",
    "plt.figure(figsize=(12,3))\n",
    "squarify.plot(sizes = be_buy.values,label=be_buy.index,value=be_buy.values,alpha = 0.5,edgecolor = 'white')\n",
    "# 除去坐标轴\n",
    "plt.axis('off')\n",
    "# 除上边框和右边框刻度\n",
    "plt.tick_params(top = 'off', right = 'off')\n",
    "plt.title('购买排名前20的商品分布情况')\n",
    "plt.savefig('5.png',dpi = 600)\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 120,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "浏览排名前20的商品有10件是加购，10件收藏，2件购买 \n",
      "加购排名前20的商品有5件是购买的\n",
      "收藏排名前20的商品有1件是购买的\n"
     ]
    }
   ],
   "source": [
    "print('浏览排名前20的商品有%i件是加购，%i件收藏，%i件购买 \\n加购排名前20的商品有%i件是购买的\\n收藏排名前20的商品有%i件是购买的'\n",
    "%(be_pv[be_pv.index.isin(be_cart.index)].count(),\n",
    "  be_pv[be_pv.index.isin(be_fav.index)].count(),\n",
    "  be_pv[be_pv.index.isin(be_buy.index)].count(),\n",
    "  be_cart[be_cart.index.isin(be_buy.index)].count(),\n",
    "  be_fav[be_fav.index.isin(be_buy.index)].count()\n",
    "))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "可以看出浏览最多的商品和购买最多的商品差别略大，最吸引用的产品却没有很好的转化成销量，应调整相关商品的运营策略，减少差距。同时，可以看出收藏的行为距离购买的行为较远，更应鼓励用户多进行加购行为。"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 5、用户价值分析：\n",
    "用户RFM分层理论： RFM是3个指标的缩写，最近一次消费时间间隔（Recency），消费频率\n",
    "（Frequency），消费金额（Monetary）。而RFM模型就是通过这三项指标，来描述客户的价值状况，从而得到\n",
    "分群的客户。其中\n",
    "R是指用户的最近一次消费时间距现在有多长时间了，这个指标反映用户流失与复购（粘性）。\n",
    "F是指用户在指定观察的周期内消费了几次。这个指标反映了用户的消费活跃度（忠诚度）。\n",
    "M是指用户在指定的观察周期内在平台花了多少钱，这个指标反映用户对公司贡献的价值（营收）。\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "由于数据集的统计的时间仅有9天，而且没有消费数据，只能根据消费频率以及消费时间进行分析，规则设置如下：\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 62,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "用户消费频次，购买时间间隔统计表\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>消费频次</th>\n",
       "      <th>购买时间间隔</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>用户ID</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>27</th>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100</th>\n",
       "      <td>8</td>\n",
       "      <td>5</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>117</th>\n",
       "      <td>10</td>\n",
       "      <td>5</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>119</th>\n",
       "      <td>3</td>\n",
       "      <td>4</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>121</th>\n",
       "      <td>1</td>\n",
       "      <td>8</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1017960</th>\n",
       "      <td>3</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1017965</th>\n",
       "      <td>1</td>\n",
       "      <td>6</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1017972</th>\n",
       "      <td>4</td>\n",
       "      <td>4</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1017997</th>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1018011</th>\n",
       "      <td>1</td>\n",
       "      <td>7</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>33286 rows × 2 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "         消费频次  购买时间间隔\n",
       "用户ID                 \n",
       "27          2       2\n",
       "100         8       5\n",
       "117        10       5\n",
       "119         3       4\n",
       "121         1       8\n",
       "...       ...     ...\n",
       "1017960     3       0\n",
       "1017965     1       6\n",
       "1017972     4       4\n",
       "1017997     2       2\n",
       "1018011     1       7\n",
       "\n",
       "[33286 rows x 2 columns]"
      ]
     },
     "execution_count": 62,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 用户价值指标计算：\n",
    "# 购买时间间隔：\n",
    "R_day = (datetime(2017,12,4) - df[df['behaviour_type'] == 'buy']['timestamp']).dt.days\n",
    "a = df[df.index.isin(R_day.index)].user_id\n",
    "a=pd.DataFrame(list(zip(a, R_day)))\n",
    "a.drop_duplicates()\n",
    "a = a.groupby(0).min()\n",
    "a['id'] = a.index\n",
    "a = a.sort_values(by = 'id')\n",
    "# 购买频率\n",
    "buy_count = df[df['behaviour_type'] == 'buy'].user_id.value_counts().sort_index()\n",
    "user_value = pd.DataFrame(list(zip(buy_count,a[1])),index=buy_count.index)\n",
    "user_value.columns = ['消费频次','购买时间间隔']\n",
    "user_value.index.set_names('用户ID',inplace = True)\n",
    "print('用户消费频次，购买时间间隔统计表')\n",
    "user_value"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 63,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "用户价值分层表\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>消费频次</th>\n",
       "      <th>购买时间间隔</th>\n",
       "      <th>R值</th>\n",
       "      <th>F值</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>用户ID</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>27</th>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>4</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100</th>\n",
       "      <td>8</td>\n",
       "      <td>5</td>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>117</th>\n",
       "      <td>10</td>\n",
       "      <td>5</td>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>119</th>\n",
       "      <td>3</td>\n",
       "      <td>4</td>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>121</th>\n",
       "      <td>1</td>\n",
       "      <td>8</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1017960</th>\n",
       "      <td>3</td>\n",
       "      <td>0</td>\n",
       "      <td>4</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1017965</th>\n",
       "      <td>1</td>\n",
       "      <td>6</td>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1017972</th>\n",
       "      <td>4</td>\n",
       "      <td>4</td>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1017997</th>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>4</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1018011</th>\n",
       "      <td>1</td>\n",
       "      <td>7</td>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>33286 rows × 4 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "         消费频次  购买时间间隔  R值  F值\n",
       "用户ID                         \n",
       "27          2       2   4   1\n",
       "100         8       5   2   1\n",
       "117        10       5   2   1\n",
       "119         3       4   3   1\n",
       "121         1       8   1   1\n",
       "...       ...     ...  ..  ..\n",
       "1017960     3       0   4   1\n",
       "1017965     1       6   2   1\n",
       "1017972     4       4   3   1\n",
       "1017997     2       2   4   1\n",
       "1018011     1       7   2   1\n",
       "\n",
       "[33286 rows x 4 columns]"
      ]
     },
     "execution_count": 63,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#计算价值分数\n",
    "user_value['R值'] = pd.cut(user_value['购买时间间隔'],bins= [-1,2,4,7,9],labels = [4,3,2,1])\n",
    "user_value['F值'] = pd.cut(user_value['消费频次'],bins =[0,10,20,30,90],labels=[1,2,3,4])\n",
    "#将分类数据转化为数值类型\n",
    "user_value[['R值','F值']] = user_value[['R值','F值']].apply(pd.to_numeric)\n",
    "print('用户价值分层表')\n",
    "user_value"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 70,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>消费频次</th>\n",
       "      <th>购买时间间隔</th>\n",
       "      <th>R值</th>\n",
       "      <th>F值</th>\n",
       "      <th>classification</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>用户ID</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>27</th>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>4</td>\n",
       "      <td>1</td>\n",
       "      <td>重要发展客户</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>100</th>\n",
       "      <td>8</td>\n",
       "      <td>5</td>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "      <td>重要挽留客户</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>117</th>\n",
       "      <td>10</td>\n",
       "      <td>5</td>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "      <td>重要挽留客户</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>119</th>\n",
       "      <td>3</td>\n",
       "      <td>4</td>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "      <td>重要发展客户</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>121</th>\n",
       "      <td>1</td>\n",
       "      <td>8</td>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>重要挽留客户</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1017960</th>\n",
       "      <td>3</td>\n",
       "      <td>0</td>\n",
       "      <td>4</td>\n",
       "      <td>1</td>\n",
       "      <td>重要发展客户</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1017965</th>\n",
       "      <td>1</td>\n",
       "      <td>6</td>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "      <td>重要挽留客户</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1017972</th>\n",
       "      <td>4</td>\n",
       "      <td>4</td>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "      <td>重要发展客户</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1017997</th>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>4</td>\n",
       "      <td>1</td>\n",
       "      <td>重要发展客户</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1018011</th>\n",
       "      <td>1</td>\n",
       "      <td>7</td>\n",
       "      <td>2</td>\n",
       "      <td>1</td>\n",
       "      <td>重要挽留客户</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>33286 rows × 5 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "         消费频次  购买时间间隔  R值  F值 classification\n",
       "用户ID                                        \n",
       "27          2       2   4   1         重要发展客户\n",
       "100         8       5   2   1         重要挽留客户\n",
       "117        10       5   2   1         重要挽留客户\n",
       "119         3       4   3   1         重要发展客户\n",
       "121         1       8   1   1         重要挽留客户\n",
       "...       ...     ...  ..  ..            ...\n",
       "1017960     3       0   4   1         重要发展客户\n",
       "1017965     1       6   2   1         重要挽留客户\n",
       "1017972     4       4   3   1         重要发展客户\n",
       "1017997     2       2   4   1         重要发展客户\n",
       "1018011     1       7   2   1         重要挽留客户\n",
       "\n",
       "[33286 rows x 5 columns]"
      ]
     },
     "execution_count": 70,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#客户分层函数\n",
    "def customer_type(frame):\n",
    "    customer_type = []\n",
    "    for i in range(len(frame)):\n",
    "        if frame.iloc[i,2]>=3 and frame.iloc[i,3]>=3:\n",
    "            customer_type.append('重要价值客户')\n",
    "        elif frame.iloc[i,2]>=1 and frame.iloc[i,3]>=3:\n",
    "            customer_type.append('重要保存客户')\n",
    "        elif frame.iloc[i,2]>=3 and frame.iloc[i,3]>=1:\n",
    "            customer_type.append('重要发展客户')\n",
    "        elif frame.iloc[i,2]>=1 and frame.iloc[i,3]>=1:\n",
    "            customer_type.append('重要挽留客户')\n",
    "    frame['classification'] = customer_type\n",
    "customer_type(user_value)\n",
    "user_value"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 71,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "客户分类统计值：\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "重要发展客户    25587\n",
       "重要挽留客户     7599\n",
       "重要价值客户       97\n",
       "重要保存客户        3\n",
       "Name: classification, dtype: int64"
      ]
     },
     "execution_count": 71,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "print('客户分类统计值：')\n",
    "user_value.classification.value_counts()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 74,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "回收内存：\n"
     ]
    },
    {
     "ename": "NameError",
     "evalue": "name 'be_user' is not defined",
     "output_type": "error",
     "traceback": [
      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[0;31mNameError\u001b[0m                                 Traceback (most recent call last)",
      "\u001b[0;32m<ipython-input-74-332bc33e2f57>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[1;32m      3\u001b[0m \u001b[0;32mdel\u001b[0m \u001b[0mbe_buy\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      4\u001b[0m \u001b[0;32mdel\u001b[0m \u001b[0mbe_cart\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 5\u001b[0;31m \u001b[0;32mdel\u001b[0m \u001b[0mbe_user\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m      6\u001b[0m \u001b[0;32mdel\u001b[0m \u001b[0mbe_value\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      7\u001b[0m \u001b[0;32mdel\u001b[0m \u001b[0mbuy_count\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;31mNameError\u001b[0m: name 'be_user' is not defined"
     ]
    }
   ],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
